e-mail z aplikace

Otázka od: In g. Zdenek Reznicek

6. 10. 2004 23:03

Zdravim vsechny,
potreboval bych poslat e-mail primo z aplikace.
Poradte nekdo prosim, jak na to.

Diky Zdenek


Odpovedá: Ludek ZITA

7. 10. 2004 0:15

 On Behalf Of In g. Zdenek Reznicek
> potreboval bych poslat e-mail primo z aplikace.
> Poradte nekdo prosim, jak na to.

Ahoj.
Strucne :
1) synapse (http://www.ararat.cz/synapse/)
2) JCL (TJclEmail)
3) Delphi: File-New-Other-Projects-Win2000 Logo App nebo Win95/98 Logo
App a tam se cihni na menu File-Send

Ludek


Odpovedá: TOROLA electronic - Bednarcik Dalibor

7. 10. 2004 6:05



> Zdravim vsechny,
> potreboval bych poslat e-mail primo z aplikace.
> Poradte nekdo prosim, jak na to.
>
> Diky Zdenek
>
>

Posilam ti dva zpusoby jak by to slo....


var MapiLoaded: Boolean;
    MAPIModule : Cardinal;
    SendMail : TFNMapiSendMail;

function PosliMail2(Adresat, Subject, TeloZpravy, JmenoSouboru: String):
Boolean;
var
  Email: TJclEmail;
begin
  Result:=False;
  Email := TJclEmail.Create;
  try
    Email.SelectedClientIndex:=1;
    Email.Recipients.Add('Zde napiste adresata', '', rkTO);
    Email.Subject := Subject;
    Email.Attachments.Add(JmenoSouboru);
    Email.Body:=TeloZpravy;
    Email.Send;
  finally
    Email.Free;
  end;
end;


function PosliMail(Adresat, Subject, TeloZpravy, JmenoSouboru: String):
Boolean;
var MSG : TMapiMessage;
    FIL : Array[0..1] of TMapiFileDesc;
    Adresati : TMapiRecipDesc;
    SendRes : Cardinal;
begin
  Result:=False;

  if (Not MapiLoaded) then begin
    MapiLoaded := True;
    MAPIModule := LoadLibrary(PChar(MAPIDLL));
    SendMail := GetProcAddress(MAPIModule, 'MAPISendMail');
  end;

  if (@SendMail=Nil) then Exit;

  ADresati.lpszName := Nil;
  Adresati.lpszAddress := PChar(Adresat);
  Adresati.ulReserved := 0;
  Adresati.ulRecipClass := MAPI_TO;
  Adresati.ulEIDSize := 0;
  Adresati.lpEntryID := nil;

  FIL[0].ulReserved := 0;
  FIL[0].flFlags := 0;
  FIL[0].nPosition := Cardinal($FFFFFFFF);
  FIL[0].lpszPathName :=
PChar(JmenoSouboru);//PChar(ExtractFilePath(JmenoSouboru));
  FIL[0].lpszFileName := Nil;//PChar(ExtractFileName(JmenoSouboru));
  FIL[0].lpFileType := Nil;

  MSG.ulReserved := 0;
  MSG.lpszSubject := PChar(Subject);
  MSG.lpszNoteText := PChar(TeloZpravy);
  MSG.lpszMessageType := Nil;
  MSG.lpszDateReceived := Nil;
  MSG.lpszConversationID := Nil;
  MSG.flFlags := 0;
  MSG.lpOriginator := Nil;
  MSG.nRecipCount := 1;
  MSG.nFileCount := 1;
  MSG.lpFiles := @FIL;
  MSG.lpRecips := @Adresati;

  SendRes := SendMail(0, Application.Handle, MSG, MAPI_DIALOG or
MAPI_LOGON_UI or MAPI_NEW_SESSION, 0);
  Result := (SendRes = 0);
end;